package com.ganbo.mybatis.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
import com.ganbo.mybatis.entity.dto.UserInfo;
import com.ganbo.mybatis.enums.UserStatus;
import lombok.Data;

import java.time.LocalDateTime;

@Data
@TableName(value = "user", autoResultMap = true)
public class User {

    @TableId
    private Long id;                    // 用户id
    private String username;            // 用户名
    private String password;            // 密码
    private String phone;               // 注册手机号

    @TableField(typeHandler = JacksonTypeHandler.class)
    private UserInfo info;              // 详细信息
    private UserStatus status;          // 使用状态（1正常 2冻结）
    private Integer balance;            // 账户余额
    private LocalDateTime createTime;   // 创建时间
    private LocalDateTime updateTime;   // 更新时间
    private Integer delFlag;            // 删除标识（0正常 1删除）
}
